blob: 6f2843c62419c3af5d462989be537fa8fd722789 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>GRPC Core: grpc_op Struct 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">GRPC Core
&#160;<span id="projectnumber">0.10.0.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
<li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></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><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
<div class="headertitle">
<div class="title">grpc_op Struct Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Operation data: one field for each op type (except SEND_CLOSE_FROM_CLIENT which has no arguments)
<a href="structgrpc__op.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a702bcecc2462646b6740ed7c05f42115"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939a">grpc_op_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__op.html#a702bcecc2462646b6740ed7c05f42115">op</a></td></tr>
<tr class="memdesc:a702bcecc2462646b6740ed7c05f42115"><td class="mdescLeft">&#160;</td><td class="mdescRight">Operation type, as defined by grpc_op_type. <a href="#a702bcecc2462646b6740ed7c05f42115">More...</a><br/></td></tr>
<tr class="separator:a702bcecc2462646b6740ed7c05f42115"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e6087665c90f146e5570f12c66d04fb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__op.html#a9e6087665c90f146e5570f12c66d04fb">flags</a></td></tr>
<tr class="memdesc:a9e6087665c90f146e5570f12c66d04fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write flags bitset for grpc_begin_messages. <a href="#a9e6087665c90f146e5570f12c66d04fb">More...</a><br/></td></tr>
<tr class="separator:a9e6087665c90f146e5570f12c66d04fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39a29ba59e6482692adfcdef46ec66ad"><td class="memItemLeft" >union {</td></tr>
<tr class="memitem:aac3d1ee963e5dbbe33ac49633765b320"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
<tr class="memitem:ae521c99d0094fff488f79617acb4f2ac"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;size_t&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#ac5983d0a5d60c26ca2d1b37d31ba2e2a">count</a></td></tr>
<tr class="separator:ae521c99d0094fff488f79617acb4f2ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0682fac0884c54a331666040fbf83d9d"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="structgrpc__metadata.html">grpc_metadata</a> *&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#a2e0f0c709658960593d5a36915c8d079">metadata</a></td></tr>
<tr class="separator:a0682fac0884c54a331666040fbf83d9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac3d1ee963e5dbbe33ac49633765b320"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#a8e6202e19130ecb872de211a95dcee83">send_initial_metadata</a></td></tr>
<tr class="separator:aac3d1ee963e5dbbe33ac49633765b320"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04fe4874acb527a1560eb3e096ca5d5e"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#a3b6c1b3456306a802f6eb0e3e8d0e434">send_message</a></td></tr>
<tr class="separator:a04fe4874acb527a1560eb3e096ca5d5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c18a704ba2de4120f4d5cef9bacc923"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
<tr class="memitem:aa8dfe8448cae099a10c9d6aa7f4f5d23"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;size_t&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#a4b9454278c105e08d54142adff37b5ab">trailing_metadata_count</a></td></tr>
<tr class="separator:aa8dfe8448cae099a10c9d6aa7f4f5d23"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee4001e7351c3577aa4b95194a20460b"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="structgrpc__metadata.html">grpc_metadata</a> *&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#a521b48faec3b3f7646a877055f118d47">trailing_metadata</a></td></tr>
<tr class="separator:aee4001e7351c3577aa4b95194a20460b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad95e9accc166c6f9be0abe39e52b235a"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#ae0d5a9db463391c0897914ef2d016b25">status</a></td></tr>
<tr class="separator:ad95e9accc166c6f9be0abe39e52b235a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01cc4869cfd6fae6aff1c225fdd11f86"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;const char *&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#ae460836040d79eb2bd0a6d581b36c461">status_details</a></td></tr>
<tr class="separator:a01cc4869cfd6fae6aff1c225fdd11f86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c18a704ba2de4120f4d5cef9bacc923"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#afe7b3ae8f4c495a187f155a5fd6956bb">send_status_from_server</a></td></tr>
<tr class="separator:a4c18a704ba2de4120f4d5cef9bacc923"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fdeebc83a2726b36915034891bc3715"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#a81ebfcab8db61dd485b88cafc51f2749">recv_initial_metadata</a></td></tr>
<tr class="memdesc:a1fdeebc83a2726b36915034891bc3715"><td class="mdescLeft">&#160;</td><td class="mdescRight">ownership of the array is with the caller, but ownership of the elements stays with the call object (ie key, value members are owned by the call object, recv_initial_metadata-&gt;array is owned by the caller). <a href="#a1fdeebc83a2726b36915034891bc3715">More...</a><br/></td></tr>
<tr class="separator:a1fdeebc83a2726b36915034891bc3715"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3f93db3262916c0460b6a75fa513fe9"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#afca6c4cc5b0c2629bb559d2037907ac1">recv_message</a></td></tr>
<tr class="memdesc:af3f93db3262916c0460b6a75fa513fe9"><td class="mdescLeft">&#160;</td><td class="mdescRight">ownership of the byte buffer is moved to the caller; the caller must call grpc_byte_buffer_destroy on this value, or reuse it in a future op. <a href="#af3f93db3262916c0460b6a75fa513fe9">More...</a><br/></td></tr>
<tr class="separator:af3f93db3262916c0460b6a75fa513fe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21d19299cc80ecb58c586863df2ab044"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
<tr class="memitem:a901a16ae4039b426c36df66a0eddcdf0"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#abb4d84434a0b74283c8b5d8d6501baf1">trailing_metadata</a></td></tr>
<tr class="memdesc:a901a16ae4039b426c36df66a0eddcdf0"><td class="mdescLeft">&#160;</td><td class="mdescRight">ownership of the array is with the caller, but ownership of the elements stays with the call object (ie key, value members are owned by the call object, trailing_metadata-&gt;array is owned by the caller). <a href="#a901a16ae4039b426c36df66a0eddcdf0">More...</a><br/></td></tr>
<tr class="separator:a901a16ae4039b426c36df66a0eddcdf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab38663f826fe658a9fc974fe594255d"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> *&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#a70d62415f6768533c2190e53f1c5baf4">status</a></td></tr>
<tr class="separator:aab38663f826fe658a9fc974fe594255d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf71b3459c229162eda6889bb3480e25"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;char **&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#ab993dfc7b33c61f06f26a4efc0aefca6">status_details</a></td></tr>
<tr class="memdesc:aaf71b3459c229162eda6889bb3480e25"><td class="mdescLeft">&#160;</td><td class="mdescRight">status_details is a buffer owned by the application before the op completes and after the op has completed. <a href="#aaf71b3459c229162eda6889bb3480e25">More...</a><br/></td></tr>
<tr class="separator:aaf71b3459c229162eda6889bb3480e25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4f79cace4345162f44fc8a2fcc70bc9"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;size_t *&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#a6cacd1d5311683ee077931c94a9dd6e9">status_details_capacity</a></td></tr>
<tr class="separator:ae4f79cace4345162f44fc8a2fcc70bc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21d19299cc80ecb58c586863df2ab044"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#a42f88554cd082ce8c66560ea24d8a8e3">recv_status_on_client</a></td></tr>
<tr class="separator:a21d19299cc80ecb58c586863df2ab044"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa55ef15fe823d705bb3ef71bcdb847da"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
<tr class="memitem:af1367b0bcc8133f4f7d2d4b2a7455147"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;int *&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#ae5a9717d4a69c46f343381596e223874">cancelled</a></td></tr>
<tr class="memdesc:af1367b0bcc8133f4f7d2d4b2a7455147"><td class="mdescLeft">&#160;</td><td class="mdescRight">out argument, set to 1 if the call failed in any way (seen as a cancellation on the server), or 0 if the call succeeded <a href="#af1367b0bcc8133f4f7d2d4b2a7455147">More...</a><br/></td></tr>
<tr class="separator:af1367b0bcc8133f4f7d2d4b2a7455147"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa55ef15fe823d705bb3ef71bcdb847da"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structgrpc__op.html#af327bcd87b609572c39ca6bfe8dbd9f1">recv_close_on_server</a></td></tr>
<tr class="separator:aa55ef15fe823d705bb3ef71bcdb847da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39a29ba59e6482692adfcdef46ec66ad"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__op.html#a39a29ba59e6482692adfcdef46ec66ad">data</a></td></tr>
<tr class="separator:a39a29ba59e6482692adfcdef46ec66ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Operation data: one field for each op type (except SEND_CLOSE_FROM_CLIENT which has no arguments) </p>
</div><h2 class="groupheader">Field Documentation</h2>
<a class="anchor" id="ae5a9717d4a69c46f343381596e223874"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int* grpc_op::cancelled</td>
</tr>
</table>
</div><div class="memdoc">
<p>out argument, set to 1 if the call failed in any way (seen as a cancellation on the server), or 0 if the call succeeded </p>
</div>
</div>
<a class="anchor" id="ac5983d0a5d60c26ca2d1b37d31ba2e2a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">size_t grpc_op::count</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a39a29ba59e6482692adfcdef46ec66ad"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">union { ... } grpc_op::data</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a9e6087665c90f146e5570f12c66d04fb"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> grpc_op::flags</td>
</tr>
</table>
</div><div class="memdoc">
<p>Write flags bitset for grpc_begin_messages. </p>
</div>
</div>
<a class="anchor" id="a2e0f0c709658960593d5a36915c8d079"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__metadata.html">grpc_metadata</a>* grpc_op::metadata</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a702bcecc2462646b6740ed7c05f42115"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939a">grpc_op_type</a> grpc_op::op</td>
</tr>
</table>
</div><div class="memdoc">
<p>Operation type, as defined by grpc_op_type. </p>
</div>
</div>
<a class="anchor" id="af327bcd87b609572c39ca6bfe8dbd9f1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct { ... } grpc_op::recv_close_on_server</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a81ebfcab8db61dd485b88cafc51f2749"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a>* grpc_op::recv_initial_metadata</td>
</tr>
</table>
</div><div class="memdoc">
<p>ownership of the array is with the caller, but ownership of the elements stays with the call object (ie key, value members are owned by the call object, recv_initial_metadata-&gt;array is owned by the caller). </p>
<p>After the operation completes, call grpc_metadata_array_destroy on this value, or reuse it in a future op. </p>
</div>
</div>
<a class="anchor" id="afca6c4cc5b0c2629bb559d2037907ac1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a>** grpc_op::recv_message</td>
</tr>
</table>
</div><div class="memdoc">
<p>ownership of the byte buffer is moved to the caller; the caller must call grpc_byte_buffer_destroy on this value, or reuse it in a future op. </p>
</div>
</div>
<a class="anchor" id="a42f88554cd082ce8c66560ea24d8a8e3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct { ... } grpc_op::recv_status_on_client</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a8e6202e19130ecb872de211a95dcee83"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct { ... } grpc_op::send_initial_metadata</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a3b6c1b3456306a802f6eb0e3e8d0e434"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a>* grpc_op::send_message</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="afe7b3ae8f4c495a187f155a5fd6956bb"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct { ... } grpc_op::send_status_from_server</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ae0d5a9db463391c0897914ef2d016b25"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> grpc_op::status</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a70d62415f6768533c2190e53f1c5baf4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>* grpc_op::status</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ae460836040d79eb2bd0a6d581b36c461"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char* grpc_op::status_details</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ab993dfc7b33c61f06f26a4efc0aefca6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">char** grpc_op::status_details</td>
</tr>
</table>
</div><div class="memdoc">
<p>status_details is a buffer owned by the application before the op completes and after the op has completed. </p>
<p>During the operation status_details may be reallocated to a size larger than status_details_capacity, in which case *status_details_capacity will be updated with the new array capacity.</p>
<p>Pre-allocating space: size_t my_capacity = 8; char *my_details = gpr_malloc(my_capacity); x.status_details = x.status_details_capacity = </p>
<p>Not pre-allocating space: size_t my_capacity = 0; char *my_details = NULL; x.status_details = x.status_details_capacity = </p>
<p>After the call: gpr_free(my_details); </p>
</div>
</div>
<a class="anchor" id="a6cacd1d5311683ee077931c94a9dd6e9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">size_t* grpc_op::status_details_capacity</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a521b48faec3b3f7646a877055f118d47"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__metadata.html">grpc_metadata</a>* grpc_op::trailing_metadata</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="abb4d84434a0b74283c8b5d8d6501baf1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a>* grpc_op::trailing_metadata</td>
</tr>
</table>
</div><div class="memdoc">
<p>ownership of the array is with the caller, but ownership of the elements stays with the call object (ie key, value members are owned by the call object, trailing_metadata-&gt;array is owned by the caller). </p>
<p>After the operation completes, call grpc_metadata_array_destroy on this value, or reuse it in a future op. </p>
</div>
</div>
<a class="anchor" id="a4b9454278c105e08d54142adff37b5ab"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">size_t grpc_op::trailing_metadata_count</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>include/grpc/<a class="el" href="grpc_8h_source.html">grpc.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Aug 5 2015 08:17:07 for GRPC Core by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>